
#pragma once

#include "base/core/singleton.h"
#include "Common/TableDefine.h"


class TargetNormalCfg : public ManualSingleton <TargetNormalCfg>
{
	friend ManualSingleton <TargetNormalCfg>;
public:
	TargetNormalCfg();
	~TargetNormalCfg();
	bool Init(const char *szCfgFile, const char *szSplitChar);
	bool UnInit();
	void Clear();
	const TargetNormalCfgInfo *GetTargetNormalCfgInfo(int32_t id);
	const TargetNormalCfgMap *GetTargetNormalCfgMap() { return &m_TargetNormalCfgMap; }
private:
	TargetNormalCfgMap m_TargetNormalCfgMap;
};

#define  g_MakeTargetNormalCfgTable() (TargetNormalCfg::Instance())
#define  g_GetTargetNormalCfgTable() (TargetNormalCfg::GetInstance())
#define  g_DelTargetNormalCfgTable() (TargetNormalCfg::Destroy())